Security News
GitHub Removes Malicious Pull Requests Targeting Open Source Repositories
GitHub removed 27 malicious pull requests attempting to inject harmful code across multiple open source repositories, in another round of low-effort attacks.
normalize.css
Advanced tools
The npm package normalize.css is a modern, HTML5-ready alternative to CSS resets. It makes browsers render all elements more consistently and in line with modern standards by precisely targeting only the styles that need normalizing.
HTML Element Normalization
Ensures consistent line height and prevents font size adjustments after device orientation changes.
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
/* Document
========================================================================== */
/**
* 1. Correct the line height in all browsers.
* 2. Prevent adjustments of font size after orientation changes in iOS.
*/
html {
line-height: 1.15; /* 1 */
-webkit-text-size-adjust: 100%; /* 2 */
}
Section and Article Styles
Removes default margins from the body and ensures the 'main' element is displayed consistently across browsers.
/* Sections
========================================================================== */
/**
* Remove the margin in all browsers.
*/
body {
margin: 0;
}
/**
* Render the 'main' element consistently in IE.
*/
main {
display: block;
}
Text-Level Semantics
Adjusts box sizing and border color inheritance in Firefox for elements like <hr>.
/* Grouping content
========================================================================== */
/**
* Add the correct box sizing in Firefox.
* Correct the inheritance of border color in Firefox. (Bug 688556)
*/
hr {
box-sizing: content-box; /* 1 */
height: 0; /* 1 */
overflow: visible; /* 2 */
}
Similar to normalize.css, reset-css is an npm package that provides CSS reset styles. It differs in that it aims to strip all default browser styling on elements, whereas normalize.css aims to make these styles consistent across browsers without removing as much of the default styling.
sanitize.css is another CSS normalization library that not only normalizes styles but also corrects bugs and common browser inconsistencies. It is similar to normalize.css but includes more opinionated defaults that enforce better usability.
A modern alternative to CSS resets
NPM
npm install --save normalize.css
Bower
bower install --save normalize-css
CDN
See https://cdnjs.com/libraries/normalize
Download
See https://necolas.github.io/normalize.css/latest/normalize.css
[Normalize.css v1 provides legacy browser support] (https://github.com/necolas/normalize.css/tree/v1) (IE 6+, Safari 4+), but is no longer actively developed.
Additional detail and explanation of the esoteric parts of normalize.css.
pre, code, kbd, samp
The font-family: monospace, monospace
hack fixes the inheritance and scaling
of font-size for preformatted text. The duplication of monospace
is
intentional. Source.
sub, sup
Normally, using sub
or sup
affects the line-box height of text in all
browsers. Source.
svg:not(:root)
Adding overflow: hidden
fixes IE9's SVG rendering. Earlier versions of IE
don't support SVG, so we can safely use the :not()
and :root
selectors that
modern browsers use in the default UA stylesheets to apply this style. [Source]
(https://lists.w3.org/Archives/Public/public-svg-wg/2008JulSep/0339.html).
select
By default, Chrome on OS X and Safari on OS X allow very limited styling of
select
, unless a border property is set. The default font weight on optgroup
elements cannot safely be changed in Chrome on OSX and Safari on OS X.
[type="checkbox"]
It is recommended that you do not style checkbox and radio inputs as Firefox's implementation does not respect box-sizing, padding, or width.
[type="number"]
Certain font size values applied to number inputs cause the cursor style of the
decrement button to change from default
to text
.
[type="search"]
The search input is not fully stylable by default. In Chrome and Safari on
OSX/iOS you can't control font
, padding
, border
, or background
. In
Chrome and Safari on Windows you can't control border
properly. It will apply
border-width
but will only show a border color (which cannot be controlled)
for the outer 1px of that border. Applying -webkit-appearance: textfield
addresses these issues without removing the benefits of search inputs (e.g.
showing past searches). Safari (but not Chrome) will clip the cancel button on
when it has padding (and textfield
appearance).
Please read the contribution guidelines in order to make the contribution process easy and effective for everyone involved.
Normalize.css is a project by Nicolas Gallagher, co-created with Jonathan Neal.
FAQs
A modern alternative to CSS resets
The npm package normalize.css receives a total of 702,186 weekly downloads. As such, normalize.css popularity was classified as popular.
We found that normalize.css demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
GitHub removed 27 malicious pull requests attempting to inject harmful code across multiple open source repositories, in another round of low-effort attacks.
Security News
RubyGems.org has added a new "maintainer" role that allows for publishing new versions of gems. This new permission type is aimed at improving security for gem owners and the service overall.
Security News
Node.js will be enforcing stricter semver-major PR policies a month before major releases to enhance stability and ensure reliable release candidates.